package br.com.ads.sgse.managedBean;

import java.util.List;

import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

import br.com.ads.dao.DAO;
import br.com.ads.sgse.entity.Municipio;
@ManagedBean
@ViewScoped
public class MunicipioBean {
	private Municipio municipio = new  Municipio();
	private List<Municipio> municipios;
	private DAO<Municipio> dao = new DAO<Municipio>(Municipio.class);
	private String parameter;
	
	public String getParameter() {return parameter;}
	public void setParameter(String parameter) {this.parameter = parameter;}
	
	/**  ACTIONS  **/
	
	@SuppressWarnings("unused")
	@PostConstruct
	private void init() {
		getAllMunicipios();
	}
	
	
	public String salvar() {
	   try {
		   if (municipio.getId() == null) {
			   dao.adiciona(municipio);   
		   } else {
			   dao.atualiza(municipio);
		   }
		   
		   getAllMunicipios();
		   municipio = new Municipio();
	   } catch (Exception e){
		   e.printStackTrace();
	   }
	   return null;
	}
	
	public void remove() {
		try {
			dao.remove(municipio);
			getAllMunicipios();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	public void getAllMunicipios() {
		try {
			setMunicipios(dao.listaTodos());
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public Municipio getMunicipio() {return municipio;}
	public void setMunicipio(Municipio municipio) {this.municipio = municipio;}


	public List<Municipio> getMunicipios() {return municipios;}
	public void setMunicipios(List<Municipio> municipios) {this.municipios = municipios;}

	
	


}
